Skip to content

fix: pnpm 버전을 10.13.1 로 packageManager 핀하여 CI 복구#141

Merged
youngminss merged 1 commit into
developfrom
fix/ci-pin-pnpm-version
May 7, 2026
Merged

fix: pnpm 버전을 10.13.1 로 packageManager 핀하여 CI 복구#141
youngminss merged 1 commit into
developfrom
fix/ci-pin-pnpm-version

Conversation

@youngminss
Copy link
Copy Markdown
Member

🎯 PR 제목

fix: pnpm 버전을 10.13.1 로 packageManager 핀하여 CI 복구

📑 작업 상세 내역

  • 버그 수정
    • package.json\"packageManager\": \"pnpm@10.13.1\" 을 추가합니다
    • 이전 두 hotfix(fix: CI 에서 pnpm v11 build script 차단으로 인한 docker build 실패 해소 #139, fix: pnpm v11 build allowlist 를 pnpm-workspace.yaml 로 이전 #140) 가 v11 의 strict ignored-builds 정책을 우회하지 못했습니다 — v11 은 onlyBuiltDependencies 설정이 있어도 native build script (sharp/unrs-resolver) 가 발견되면 install 을 실패시킵니다
    • corepack 이 packageManager 부재 시 자동으로 latest pnpm(현재 11.0.8) 을 가져왔던 점이 원인이라, 마지막 green CI 시점 버전(10.13.1) 으로 핀해 동일 버전이 CI 에서도 사용되도록 합니다
    • 이전 hotfix 의 pnpm-workspace.yaml allowlist 는 그대로 유지 — 미래에 v11 마이그레이션 시 곧바로 재사용 가능

🙏 리뷰 요청 사항

  • 본 PR 머지 후 develop deploy CI 가 green 으로 회복되는지 확인 부탁드립니다
  • pnpm v11 호환은 별도 follow-up 으로 진행 (allowBuilds 형식 도입 등)

📃 참고 자료

🖼️ 작업 결과물

The previous attempts (#139, #140) tried to allowlist sharp and
unrs-resolver under pnpm v11's stricter ignored-builds policy, but
v11 still fails the install with ERR_PNPM_IGNORED_BUILDS even when
onlyBuiltDependencies is configured. Corepack picked v11.0.8 because
the project never declared a packageManager field, so a single
release of pnpm flipped CI from green to red.

Pins pnpm to 10.13.1 (the version that produced the last green
build) via packageManager so corepack resolves the same version on
CI as on local dev. The pnpm-workspace.yaml allowlist is kept so a
future migration to v11 stays straightforward.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@youngminss youngminss added the 🐞 Fix 버그 수정 및 이슈 해결 label May 7, 2026
@youngminss youngminss self-assigned this May 7, 2026
@youngminss youngminss requested a review from RookieAND May 7, 2026 16:42
@github-actions github-actions Bot added 🐞 Fix 버그 수정 및 이슈 해결 and removed 🐞 Fix 버그 수정 및 이슈 해결 labels May 7, 2026
@youngminss youngminss merged commit e020a3c into develop May 7, 2026
3 checks passed
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

package.json에 packageManager 필드를 추가하여 pnpm 버전을 고정했습니다. 리뷰에서는 pnpm v11 사용에 따른 lockfile 버전 불일치로 인한 CI 오류 가능성을 지적하며 v10 호환 버전으로의 롤백 필요성을 언급했고, 개발 환경의 일관성을 위해 engines 필드에도 pnpm 버전을 명시하도록 제안했습니다.

Comment thread package.json
"typescript": "^5"
}
},
"packageManager": "pnpm@10.13.1"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

pnpm v11이 이미 실행되어 pnpm-lock.yaml이 v9으로 업데이트된 경우, packageManager를 v10으로 고정하더라도 lockfile 버전 불일치로 인해 CI 설치 단계에서 오류가 발생할 수 있습니다. CI 복구를 위해 lockfile을 v10 호환 버전(v6 또는 v7)으로 롤백하는 작업이 함께 수행되어야 합니다.

Comment thread package.json
"typescript": "^5"
}
},
"packageManager": "pnpm@10.13.1"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

packageManager 필드와 더불어 engines 필드에도 pnpm 버전을 명시하는 것을 권장합니다. 이는 Corepack을 사용하지 않는 환경에서도 개발자들이 동일한 pnpm 버전을 사용하도록 유도하여 환경 일관성을 높여줍니다.

	"packageManager": "pnpm@10.13.1",
	"engines": {
		"pnpm": "10.13.1"
	}

github-actions Bot pushed a commit that referenced this pull request May 12, 2026
## [2.7.0](v2.6.0...v2.7.0) (2026-05-12)

### Features

* RegionStep에 지역 요청 Banner 및 Dialog 추가 ([#133](#133)) ([b61ba13](b61ba13))
* 식당 상세 시안 정렬 및 전화하기 CTA 추가 ([#138](#138)) ([b675fc4](b675fc4))
* 식당 상세 페이지 신규 구현 ([#134](#134)) ([055841c](055841c))
* 약속 장소 섹션 캐러셀 UI 개편 ([#137](#137)) ([c77b04a](c77b04a))

### Bug Fixes

* certbot 컨테이너 제거 후 호스트 certbot 방식으로 전환 ([a104bfb](a104bfb))
* **ci:** allowlist sharp and unrs-resolver build scripts ([#139](#139)) ([6399273](6399273))
* **ci:** move pnpm build allowlist to pnpm-workspace.yaml ([#140](#140)) ([17ecd51](17ecd51))
* **ci:** pin pnpm to 10.13.1 via packageManager ([#141](#141)) ([e020a3c](e020a3c)), closes [#139](#139) [#140](#140)
* **ci:** pnpm 버전 충돌 해결을 위해 워크플로우의 version 명시 제거 ([a5000af](a5000af))

### Code Refactoring

* VoteSummarySection 거리 블록 숨김 및 디렉터리 분리 ([#136](#136)) ([31f9d13](31f9d13)), closes [#132](#132)
github-actions Bot pushed a commit that referenced this pull request May 12, 2026
## [2.7.0-beta.7](v2.7.0-beta.6...v2.7.0-beta.7) (2026-05-12)

### Bug Fixes

* certbot 컨테이너 제거 후 호스트 certbot 방식으로 전환 ([a104bfb](a104bfb))
* **ci:** move pnpm build allowlist to pnpm-workspace.yaml ([#140](#140)) ([17ecd51](17ecd51))
* **ci:** pin pnpm to 10.13.1 via packageManager ([#141](#141)) ([e020a3c](e020a3c)), closes [#139](#139) [#140](#140)
* **ci:** pnpm 버전 충돌 해결을 위해 워크플로우의 version 명시 제거 ([a5000af](a5000af))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🐞 Fix 버그 수정 및 이슈 해결

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant